void lookmenu()
{
speak("Please wait...");
lasttile="";
lastzone="";
airchange=false;
tilechange=false;
setupmenu();
for(int i=me.x-15; i<=me.x+15; i++)
{
for (uint i2=0; i2<players.length(); i2++)
{
if (players[i2].x==i and players[i2].charname!=un and players[i2].map==mapname and players[i2].y==me.y)
{
if (players[i2].x<me.x)
m.add_item_tts(players[i2].nickname+"("+players[i2].charname+", left "+(me.x-players[i2].x),players[i2].x);
else if (players[i2].x>me.x)
m.add_item_tts(players[i2].nickname+"("+players[i2].charname+", right "+(players[i2].x-me.x),players[i2].x);
else
m.add_item_tts(players[i2].nickname+"("+players[i2].charname,players[i2].x);
}
}
for (uint i2=0; i2<objs.length(); i2++)
{
if (objs[i2].x==i and objs[i2].y==me.y)
{
if (objs[i2].x<me.x)
m.add_item_tts("Item containing "+objs[i2].item+", left "+(me.x-objs[i2].x),objs[i2].x);
else if (objs[i2].x>me.x)
m.add_item_tts("Item containing "+objs[i2].item+", right "+(objs[i2].x-me.x),objs[i2].x);
else
m.add_item_tts("Item containing "+objs[i2].item,objs[i2].x);
}
}
for (uint i2=0; i2<mines.length(); i2++)
{
if (mines[i2].x==i and mines[i2].y==me.y&&mines[i2].map==mapname)
{
if (mines[i2].x<me.x)
m.add_item_tts("mine, left "+(me.x-mines[i2].x),mines[i2].x);
else if (mines[i2].x>me.x)
m.add_item_tts("mine, right "+(mines[i2].x-me.x),mines[i2].x);
else
m.add_item_tts("mine",mines[i2].x);
}
}
string tile1=get_tile_at(i,me.y);
string tile2=get_tile_at(me.x,me.y);
if (tile1!=tile2 and lasttile!=tile1)
{
string tile=tile1;
lasttile=tile;
if (tile=="")
tile="Air";
if (i<me.x)
m.add_item_tts(tile+", left "+(me.x-i),i);
else if (i>me.x)
m.add_item_tts(tile+", right "+(i-me.x),i);
else
m.add_item_tts(tile,i);
}
else
{
string tile=tile1;
lasttile=tile;
}
string zone1=get_zone_at(i,me.y);
string zone2=get_zone_at(me.x,me.y);
if (zone1!=zone2 and lastzone!=zone1)
{
string tile=zone1;
lastzone=tile;
if (tile=="")
//tile="Uncharted";
tile="Unknown Area";
if (i<me.x)
m.add_item_tts(tile+", left "+(me.x-i),i);
else if (i>me.x)
m.add_item_tts(tile+", right "+(i-me.x),i);
else
m.add_item_tts(tile,i);
}
else
{
string tile=zone1;
lastzone=tile;
}
}
if (m.get_item_count()==0)
speak("No items");
int mres=m.run("Look menu. "+m.get_item_count()+" items.",true);
if (mres>0)
{
track_this(string_to_number(m.get_item_name(mres)),me.y);
}
}
